1. Technical Field
The present application relates generally to an improved data processing apparatus and method. More specifically, the present application is directed to a detection and accommodation of hot-plug conditions.
2. Description of Related Art
Many computer systems are designed to be continuously powered on for extended periods of time. As well, redundancy is employed throughout many computer systems for modules, such as power supplies, server blades, management modules, switch modules, and even integrated storage with Redundant Array of Independent Drives (RAID) controllers. Redundancy allows for one of these elements to be replaced concurrently within the computer system in operation. A typical scenario occurs when one module, such as a server blade, fails and a service action is required to replace the failed module. Under this condition, the faulty module may be removed and replaced with a new one, which may be referred to as “hot plugging” and “hot unplugging”.
A standard for such computer systems is to also implement electrical signals that are shared across multiple modules or server blades. FIG. 1 illustrates a typical distributed circuit within a blade server. Power supply 102 generates Signal_A 104 that is distributed and received by multiple blades 106, 108, and 110. Receiver circuitry 112 on blades 106, 108, and 110 includes electrical static discharge (ESD) protection clamp diodes 114 and 116. ESD protection clamp diodes 114 and 116 are used to prevent electrical overload (i.e. damage) to receiver input structure 118 during hot-plug and hot-unplug conditions. ESD protection clamp diodes 114 and 116 also protect against static electricity when the blades 106, 108, and 110 are handled. ESD protection clamp diode 114 clamps the operating voltage to Vcc 120 in order to prevent Signal_A 104 in blades 106, 108, and 110 from exceeding Vcc 120 by more than a diode drop. A diode drop is the voltage drop that is developed across the anode and cathode of a diode, such as ESD protection clamp diodes 114 and 116, when the diode is forward biased. This voltage drop varies as a function of the type of diode, e.g. Schottky diode, clamp diode, and the like, as well as the current flowing through the diode. ESD protection clamp diodes 114 and 116 generally present a voltage drop or diode drop of 1 volt. If Signal_A 104 exceeds Vcc 120, the excess voltage can cause PN junctions, inherent in receiver input structure 118, to be substantially reversed biased resulting in excessive current flow and very likely damaging blades 106, 108, and 110. A PN junction is an interface within diodes, transistors, and other semiconductor devices between two different types of materials called p-type and n-type semiconductors.
A side effect of ESD protection clamp diodes 114 and 116 is that ESD protection clamp diodes 114 and 116 become forward biased (i.e. conduct electricity) for a short period of time when blade 106, 108, or 110 is hot plugged. This forward bias condition will result in the shared signal being clamped to, for example, one diode drop, Vdiode, above ground, or the like. All server blades that incorporate this signal will be exposed to this condition.
FIG. 2 illustrates an exemplary hot-plug scenario in a distributed circuit within a blade server. Considering that Signal_A 204 from power supply 202 normally operates at a high-voltage level and during a hot-plug scenario of blade 206, Signal_A 204 may become clamped to a voltage level that is one diode drop above low-voltage level 212, whereby, receiver input structure 218 on each of blades 208 and 210 will detect such a falsely asserted Signal_A 204 condition, causing the overall system to become adversely affected.
FIG. 3 illustrates a normal signal amplitude. In scenario 302, Signal_A 304 is normally inactive at a normal high-voltage level, Vhigh normal 306. All circuitry receiving Signal_A 304 has a built-in threshold level 308 that will discriminate between different voltage levels. A normal transition of Signal_A 304 will produce a normal amplitude swing and the receivers will detect it as a normal low-voltage level, Vlow normal 310.
FIG. 4 illustrates a false signal amplitude that may occur during a hot-plug scenario. In contrast to scenario 302 of FIG. 3, scenario 402 illustrates when a blade, such as blade 206 of FIG. 2 is hot plugged. In scenario 402, Signal_A 404 becomes clamped to an intermediate voltage level, Vlow clamped 412. Since Vlow clamped 412 is below threshold level 408 it is detected by the receiver circuits as a low-voltage level which in effect is a false assertion of Signal_A 404.
Therefore, in addition to adversely affecting a given shared signal as described above, the process of hot plugging a card into a shared electrical system may also cause unwanted behavior to normally operating signals that are shared or not shared amongst the various blade cards. For example, if Blade A implements some signals to Blade B, such as reset signals, clock signals or control/status/interrupt signals, then when Blade A is initially hot plugged (before Blade A's soft start voltage circuitry becomes energized) these signals can be non-deterministic during the course of the soft start voltage boundary being energized. Such unknown signal states can adversely affect Blade B which normally monitors and reacts to these signals.